System and Method for Content Selection

ABSTRACT

Methods, systems, and software are described herein for providing a user interface that, in one example, indicates the current point in progress for various items that are available for selection. Upon selection of one of the items of content and/or services that present the items of content, the item of content may be accessed (e.g., for display, recording, or other type of consumption) at the point in progress or at another location within the item of content that may correspond to or otherwise depend upon the point in progress.

BACKGROUND

Users have a large variety of content options at their disposal. A useroften has hundreds of channels, on-demand libraries, and servicesavailable to watch at any given time. Sifting through all availablecontent can be difficult, and there remains an ever-present need tosimplify a user's process of perusing the available options andselecting content to consume.

SUMMARY

The following summary is for illustrative purposes only, and is notintended to limit or constrain the detailed description,

Some aspects as described herein relate to an approach for presenting auser interface, such as but not limited to a content guide, thatindicates, in an efficient and straightforward way, how far along eachof a plurality of media items are in their playback. Media items mayinclude, for example, items of content (e.g., audio content, videocontent, audio/video content, movies, programs, audio content, videogames, on demand content, multicast or otherwise transmitted content,and/or the like) and services that provide items of content (e.g.,streaming services, NBC, ABC, CBS, HBO, local channels, etc.). Forinstance, where content is scheduled to be transmitted beginning at ascheduled start time, a user who wishes to view the content after thescheduled start time may begin viewing the content at thecurrently-transmitted portion of the content. It may be helpful toinform the user of the current point in progress of the content. Thismay assist the user in deciding whether the user is interested inconsuming the content (which may he more likely if the point in progressis earlier in the content) or in selecting another item of content.

According to some aspects, a user interface may be generated thatcontains a plurality of representations. At least some of therepresentations may each correspond to an item of content currently inprogress (and/or a service that is currently transmitting an item ofcontent), and may further comprise a progress indicator visuallyidentifying a point in progress of the item of content. A selection maybe made of one of the plurality of representations, and in response tothe selection, the item of content for the selected one of the pluralityof representations may be accessed (e.g., for display, recording, orother type of consumption) beginning at a location within the item ofcontent that corresponds to or otherwise depends upon the point inprogress.

In another aspect, a point in progress may be determined, based onschedule information, for each of a plurality of items of content thatare currently scheduled to be in progress. A user interface may beprepared and/or displayed indicating the points in progress for all orsome e.g. depending upon user interest) of the items of content. A userselection of one of the items of content may be made. In response to theuser selection, the selected item of content may be displayed beginningat the point in progress for the selected item of content.

The summary here is not an exhaustive listing of the novel featuresdescribed herein, and are not limiting of the claims. These and otherfeatures are described in greater detail below.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features, aspects, and advantages of the presentdisclosure will become better understood with regard to the followingdescription, claims, and drawings. The present disclosure is illustratedby way of example, and not limited by, the accompanying figures in whichlike numerals indicate similar elements.

FIG. 1 illustrates an example communication network on which variousfeatures described herein may be used,

FIG. 2 illustrates an example computing device that can be used toimplement any of the methods, servers, entities, and computing devicesdescribed herein.

FIG. 3 is an example diagram of various items of content over time inaccordance with one or more aspects described herein.

FIGS. 4-9 show various examples of user interfaces that may be presentedin accordance with one or more aspects described herein.

FIG. 10 is a flow chart showing examples steps that may be performed inaccordance with one or more aspects described herein.

FIGS. 11-14 are examples diagrams of an item of content over time inaccordance with one or more aspects described herein.

FIG. 15 is an example of a remote control device that may be used inaccordance with one or more aspects described herein.

DETAILED DESCRIPTION

In the following description of various illustrative embodiments,reference is made to the accompanying drawings, which form a parthereof, and in which is shown, by way of illustration, variousembodiments in which aspects of the disclosure may be practiced. It isto be understood that other embodiments may be utilized, and structuraland functional modifications may be made, without departing from thescope of the present disclosure.

Various features described herein relate to displaying a schedule ofavailable content for a user's consumption. For example, a userinterface may display tiles or other visual representations of variousmedia items, such as items of content (e.g., movies, programs, audiocontent, video games, on-demand content, multicast or otherwisetransmitted content, and the like) and/or services (e.g., streamingservices, NBC, ABC, CBS, HBO, local channels, etc.) that may betransmitting scheduled or on-demand content, such as weekly programseries. The representations (e.g., tiles) may each contain a visualimage (e.g., a screen capture of a program, a channel or service logo, aprogram title, etc.) and/or text corresponding to one of the items ofcontent and/or services, and the user may view the representationsthrough a computer-generated user interface to select an item of contentand/or service for consumption (e.g., choosing to watch a particularmovie, or choosing to watch NBC). in some embodiments, the individualrepresentations may include program progress indicators of the point nprogress of the represented item of content or of an item of contenttransmitted by the represented service—e.g., how far along the playbackis of the item of content. For example, if the current item of contentis halfway finished, then the left half of the tile (representing, e.g.,the portion of the item of content already transmitted or otherwisepresented for consumption) may be displayed in a different color, orotherwise in a different style, from the right half (representing, e.g.,the portion of the item of content not yet transmitted or otherwisepresented for consumption. For example, the representation may bepresented with a color gradient, shading, or other visual modificationto the image that depends upon the point in progress. As time goes by,and the item of content progresses, this progress indicator maygradually extend across the entire width of the representation, forexample, thereby quickly informing the user about the progress of theitem of content. in this manner, the user can quickly determine how muchof a current item of content will remain to be seen if the user were tochoose that item of content. Moreover, by using such a gradient or othermodification integrated into the image or other tile content, screenreal estate need not be wasted on providing a progress bar in additionto the image or other tile content.

In some embodiments, one or more previous media items (e.g., items ofcontent and/or services) consumed by the user may be visuallydifferentiated in the user interface. For example, if the user wasviewing or otherwise consuming a particular item of content and/orservice at the time that he or she opened the user interface (or, inother embodiments, if the user had viewed or otherwise consumed theparticular item of content at any previous time), then the tile or otherrepresentation for that particular item of content or service may bedisplayed using a black and white palette (e.g., in black-and-whiteand/or in grayscale), as opposed to those tiles representingnot-previously-viewed. content being displayed using, e.g., a colorpalette. This is merely an example—other types of visual differentiationmay be provided. The visual differentiation may help the user as well.For instance, where the visually differentiated item of content orservice is one that was being viewed at the time that the graphicalinterface was opened, then such differentiation may inform the user thatselecting this tile (or other representations) would merely result inclosing the user interface and returning to the item of content and/orservice, with no subsequent changing of the item of content and/orservice currently being consumed. Or, where the visual differentiationis to indicate that the item of content or service was previouslyconsumed (but not necessarily while the user interface was opened), thenthe visual differentiation may serve to inform the user as to whichitem(s) of content and/or service(s) were already consumed versus thosenot yet consumed. In some embodiments, the visual differentiation may beprovided for any items of content and/or services previously consumed bythe user and/or user device. In other embodiments, the visualdifferentiation may be provided only for those items of content and/orservices that were previously consumed within the previous X amount oftime (e.g., the previous week, or the previous month, etc.).

In some embodiments, tiles or other representations may be selected viaa touch screen (such as by touching one of the tiles), by a mouseinterface, and/or the like. Moreover, selection of the tiles or otherrepresentations may be made by using a physical key pad shortcut, suchas a number key pad and/or an alphabetic keyboard. The user interfacemay display an array of the tiles (or other representations), such asten or twelve tiles (merely by way of example), and some or all of thosetiles may be mapped to a button (key) on a user's remote control and/oranother type of user interface element. For example, the numeric digits(0-9) may be mapped to ten of the tiles, and other keys on the remotecontrol (e.g., a “Back” or “Next” key) may be mapped to other tiles.Each tile may be displayed with a visual overlay of its mapped key (orsome other indication of the mapped key), and the user may select a tileby pressing its mapped key. Doing so may result in the display ofadditional information about the selected tile's corresponding item ofcontent or service (e.g., information describing the item or content orservice, or the program currently being transmitted on that service).The user may press the same mapped key again to select the item ofcontent or service and to begin receiving and consuming the item ofcontent, and so the user may not need to move his or her finger in orderto both obtain information about an item of content and view orotherwise consume the item of content. Moreover, the mapped buttoninterface (also referred to herein as a quick-tune button interface) maybe the same or similar as between multiple devices of the user (e.g.,between a cell phone, a tablet computer, a media server, a television,etc.). This may be convenient in that the user may work with the sametype of interface seamlessly between devices. These and other featuresare described greater detail below.

FIG. 1 illustrates an example communication network 100 on which many ofthe various features described herein may be implemented. Network 100may be any type of information distribution network, such as satellite,telephone, cellular, wireless, etc. One example may be an optical fibernetwork, a coaxial cable network, or a hybrid fiber/coax distributionnetwork. Such networks 100 use a series of interconnected communicationlinks 101 (e.g., coaxial cables, optical fibers, wireless, etc.) toconnect multiple premises 102 (e.g., businesses, homes, consumerdwellings, etc.) to a local office or headend 103. The local office 103may transmit downstream information signals onto the links 101, and eachpremises 102 may have a receiver used to receive and process thosesignals.

There may be one link 101 originating from the local office 103, and itmay be split a number of times to distribute the signal to variouspremises 102 in the vicinity (which may be many miles) of the localoffice 103. The links 101 may include components not illustrated, suchas splitters, filters, amplifiers, etc. to help convey the signalclearly, but in general each split introduces a bit of signaldegradation. Portions of the links 101 may also be implemented withfiber-optic cable, while other portions may be implemented with coaxialcable, other lines, or wireless communication paths. By running fiberoptic cable along some portions, for example, signal degradation may besignificantly minimized, allowing a single local office 103 to reacheven farther with its network of links 101 than before.

The local office 103 may include an interface, such as a terminationsystem (TS) 104. More specifically, the interface 104 may be a cablemodem termination system (CMTS), which may be a computing deviceconfigured to manage communications between devices on the network oflinks 101 and backend devices such as servers 105-107 (to be discussedfurther below). The interface 104 may be as specified in a standard,such as the Data Over Cable Service Interface Specification (DOCSIS)standard, published by Cable Television Laboratories, Inc. (a.k.a.CableLabs), or it may be a similar or modified device instead. Theinterface 104 may be configured to place data on one or more downstreamfrequencies to be received by modems at the various premises 102, and toreceive upstream communications from those modems on one or moreupstream frequencies.

The local office 103 may also include one or more network interfaces108, which can permit the local office 103 to communicate with variousother external networks 109.

These networks 109 may include, for example, networks of Internetdevices, telephone networks, cellular telephone networks, fiber opticnetworks, local wireless networks (e.g., WiMAX), satellite networks, andany other desired network, and the network interface 108 may include thecorresponding circuitry needed to communicate on the external networks109, and to other devices on the network such as a cellular telephonenetwork and its corresponding cell phones.

As noted above, the local office 103 may include a variety of servers105-107 that may be configured to perform various functions. Forexample, the local office 103 may include a push notification server105. The push notification server 105 may generate push notifications todeliver data and/or commands to the various premises 102 in the network(or more specifically, to the devices in the premises 102 that areconfigured to detect such notifications). The local office 103 may alsoinclude a content server 106. The content server 106 may be one or morecomputing devices that are configured to provide content to users attheir premises. This content may be, for example, video on demandmovies, television programs, songs, text listings, etc. The contentserver 106 may include software to validate user identities andentitlements, to locate and retrieve requested content, to encrypt thecontent, and to initiate delivery (e.g., streaming) of the content tothe requesting user(s) and/or device(s).

The local office 103 may also include one or more application servers107. An application server 107 may be a computing device configured tooffer any desired. service, and may run various languages and operatingsystems (e.g., servlets and JSP pages running on Tomcat/MySQL, OSX, BSD,Ubuntu, Redhat, HTML5, JavaScript, AJAX and COMET). For example, anapplication server may be responsible for collecting television programlistings information and generating a data download for electronicprogram guide listings. Another application server may be responsiblefor monitoring user viewing habits and collecting that information foruse in selecting advertisements. Yet another application server may beresponsible for formatting and inserting advertisements in a videostream being transmitted to the premises 102. Although shown separately,one of ordinary skill in the art will appreciate that the push server105, content server 106, and application server 107 may be combined.Further, here the push server 105, content server 106, and applicationserver 107 are shown generally, and it will be understood that they mayeach contain memory storing computer executable instructions to cause aprocessor to perform steps described herein and/or memory for storingdata.

An example premises 102 a, such as a home, may include an interface 120.The interface 120 can include any communication circuitry needed toallow a device to communicate on one or more links 101 with otherdevices in the network. For example, the interface 120 may include amodem 110, which may include transmitters and receivers used tocommunicate on the links 101 and with the local office 103. The modem110 may be, for example, a coaxial cable modem (for coaxial cable lines101), a fiber interface node (for fiber optic lines 101), twisted-pairtelephone modem, cellular telephone transceiver, satellite transceiver,local wi-fi router or access point, or any other desired modern device.Also, although only one modem is shown in FIG. 1, a plurality of modemsoperating in parallel may be implemented within the interface 120.Further, the interface 120 may include a gateway interface device 111.The modem 110 may be connected to, or be a part of, the gatewayinterface device 111 The gateway interface device 111 may be a computingdevice that communicates with the modem(s) 110 to allow one or moreother devices in the premises 102 a, to communicate with the localoffice 103 and other devices beyond the local office 103. The gateway111 may be a set-top box (STB), digital video recorder (DVR), computerserver, or any other desired computing device. The gateway 111 may alsoinclude (not shown) local network interfaces to provide communicationsignals to requesting entities/devices in the premises 102 a, such asdisplay devices 112 (e.g., televisions), additional STBs or DA/Rs 113,personal computers 114, laptop computers 115, wireless devices 116(e.g., wireless routers, wireless laptops, notebooks, tablets andnetbooks, cordless phones (e.g., Digital Enhanced Cordless TelephoneDECT phones), mobile phones, mobile televisions, personal digitalassistants (PDA), etc), landline phones 117 (e.g. Voice over InternetProtocol Val' phones), and any other desired devices. Examples of thelocal network interfaces include Multimedia Over Coax Alliance (MoCA)interfaces, Ethernet interfaces, universal serial bus (USB) interfaces,wireless interfaces (e.g., IEEE 802.11, IEEE 802.15), analog twistedpair interfaces, Bluetooth interfaces, and others,

FIG. 2 illustrates general hardware and software elements that may beused to implement any of the various computing devices discussed herein,such as any of the elements of FIG. 1. The computing device 200 mayinclude one or more processors 201, which may execute instructions of acomputer program to perform any of the features described herein. Theinstructions may be stored in any type of computer-readable medium(e.g., memory), to configure the operation of the processor 201. Forexample, instructions may be stored in a read-only memory (ROM) 202,random access memory (RAM) 203, removable media 204 (such as a UniversalSerial Bus (USB) drive, compact disk (CD) or digital versatile disk(DVD), or floppy disk drive), and/or any other desired storage medium.Instructions may also be stored in an attached (or internal) hard drive205. The computing device 200 may include one or more output devices,such as a display 206 (e.g., an external television), and may includeone or more output device controllers 207, such as a video processor.There may also be one or more user input devices 208, such as a remotecontrol, keyboard, mouse, touch screen, microphone, etc. The computingdevice 200 may also include one or more network interfaces, such as anetwork input/output (I/O) circuit 209 (e.g., a network card) tocommunicate with an external network 210. The network input/outputcircuit 209 may be a wired interface, wireless interface, or acombination of the two. In some embodiments, the network input/outputcircuit 209 may include a modem (e.g., a cable modem), and the externalnetwork 210 may include the communication links 101 discussed above, theexternal network 109, an in-home network, a provider's wireless,coaxial, fiber, or hybrid fiber/coaxial distribution system (e.g., aDOCSIS network), or any other desired network. Additionally, the devicemay include a location-detecting device, such as a global positioningsystem (GPS) microprocessor 211, which can be configured to receive andprocess global positioning signals and determine, with possibleassistance from an external server and antenna, a geographic position ofthe device.

Modifications may be made o add, remove, combine, divide, etc.components of the computing device 200 as desired. Additionally, thecomponents illustrated may be implemented using basic computing devicesand components, and the same components (e.g., processor 201, ROMstorage 202, display 206, etc.) may be used to implement any of theother computing devices and components described herein. For example,the various components herein may be implemented using computing deviceshaving components such as a processor executing computer-executableinstructions stored on a computer-readable medium, as illustrated inFIG. 2. Some or all of the entities described herein may be softwarebased, and may co-exist in a common physical platform (e.g., arequesting entity can be a separate software process and program from adependent entity, both of which may be executed as software on a commoncomputing device).

One or more aspects of the disclosure may be embodied in acomputer-usable data and/or computer-executable instructions, such as inone or more program modules, executed by one or more computers or otherdevices. Generally, program modules include routines, programs, objects,components, data structures, etc. that perform particular tasks orimplement particular abstract data types when executed by a processor ina computer or other data processing device. The computer executableinstructions may be stored on one or more computer readable media suchas a hard disk, optical disk, removable storage media, solid statememory, RAM, etc. As will be appreciated by one of skill in the art, thefunctionality of the program modules may be combined or distributed asdesired in various embodiments. in addition, the functionality may beembodied in whole or in part in firmware or hardware equivalents such asintegrated circuits, field programmable gate arrays (FPGA), and thelike. Particular data structures may be used to more effectivelyimplement one or more aspects of the disclosure, and such datastructures are contemplated within the scope of computer executableinstructions and computer-usable data described herein.

One or more of the devices of FIG. 1, such as one or more of the devicesat the user premises 102, may be used to obtain, record, display,present, and/or otherwise process content received from the network. Thecontent may be received via, communication links 101, and may beprovided by any one or more sources, such as the content server 106.Examples of content that may be provided to a device include audiocontent, video content (with or without audio), graphical content,textual content, and/or any other type of data. In addition to thecontent, the device(s) such as at the user premises 102 may receiveinformation indicating the availability of the content. Such informationmay be presented by the device such as in the form of a user interface,e.g., a displayed content guide, and information for the user interfacemay be provided via communication links 101 from the network, e.g., fromthe push server 105, the content server 106, and/or the applicationserver 107. The user interface may be interactive or passive, and mayprovide the user with information identifying the content, indicatinghow to obtain various content, and/or indicating the availability of thecontent. For example, the user interface may indicate the title of thecontent, other information about the content, one or more price optionsfor viewing/recording the content, the timeframe within which thecontent may be viewed, which channel, content provider, or otherresource provides the content, and the like. The content may beon-demand content (e.g., provided/transmitted in response to a userrequest) or scheduled content (e.g., provided/transmitted at a scheduledtimeframe regardless of any user requests).

The user interface may also provide status information about content.For example, where content is in-progress (e.g., currently beingtransmitted, unicast, multicast, and/or otherwise provided), the userinterface may include an indication of the point in progress of thecontent that is currently being provided. For instance, if the contenthas already begun being provided and is currently 10% through theentirety of the content, then the user interface may include anindication that the point in progress of the content being provided isat a point other than the beginning of the content (e.g., the point inprogress is some portion of the content such as 10% complete, with 90%of the content remaining to be provided). The indication may be usefulto a user who wishes to begin obtaining (e.g., tuning to, selecting,switching to, etc.) the content in progress, as the point in progressmay indicate at what point the user will begin viewing, recording, orotherwise consuming the content in progress.

The user interface may be remotely generated (e.g., by the applicationserver 107, a web server, etc.) and presented for display by the user'sdevice. Alternatively, the user interface may be locally generated bythe user's device (although the data for the user interface may still beprovided from a remote source such as the application server 107, a webserver, etc.). Where the user interface is remotely generated, the userinterface may be presented, e.g., as a web page using a web browser atthe user's device. Where the user interface is locally generated, theuser interface may be locally generated, e.g., by application softwarelocally executed by the user's device, such as a phone or tablet app.

FIG. 3 graphically shows an example of a point in progress for variouscontent. In the shown example, three items referred to herein as Title1, Title 2, and Title 3, are being provided at least partiallysimultaneously in time or having overlapping presentation times. Forexample, one or more of the three items of content may be transmitted atone or more scheduled times or transmitted at a time in response to auser request (e.g., on demand). As can be seen in the present example,the three items of content start and end at different times. However,any of the items of content may start and/or end at the same times.Moreover, any of the items of content may have lengths that are the sameor that are different from one another. Thus, at any given time, thepoint in progress may be different for each of various items of contentthat are in progress.

The point in time labeled “NOW” in FIG. 3 indicates the current time.For example, if a user were to view an interface such as a contentguide, and if the user interface indicated the current time to be “NOW,”then the point in progress for each of the three items of content can beseen as the locations that the broken vertical line intersects the threeitems of content in progress. For example, the point in progress forTitle 1 is just over halfway (e.g., about 60% progress into thecontent), the point in progress for Title 2 is near the beginning (about10% progress into the content), and the point in progress for Title 3 isabout halfway (e.g., about 45% progress into the content). As time movesforward, it may be expected that the point in progress for each item ofcontent will also progress forward through the content. However, it isalso possible that the point in progress may remain steady, move forwardmore quickly than in real time, or even move backward, depending uponwhether the content is paused, rewound, fast-forwarded, or otherwisemodified such as using trick-play functions. Where the content ismulticast or otherwise transmitted to multiple users who have no controlover the progress of the content, then the point in progress may beexpected to move forward at the same rate as real time. While the pointin progress has been discussed herein as percentages, the point inprogress may be measured in any units, such as a ratio of time elapsedfrom the beginning of the content to total expected content time, timeelapsed from the beginning of the content, expected time remaining tothe end of the content, and the like.

FIG. 4 is an example of a user interface, which may be in the form of acontent guide, as presented to a user. In this example, the userinterface may include a set of information for each item of content thatis indicated by the user interface. By way of example, and inrecognition of the tiled layout shown in FIG. 4, the information for agiven item of content and/or service will be referred to herein as atile. Thus, for example, in the shown user interface, twelve items ofcontent and/or services are indicated, with twelve corresponding tiles(including tiles 401-A, 401-B, and 401-C for three of the items ofcontent and/or services). However, the user interface may indicate fewerthan nine items of content (fewer than nine tiles) or more than nineitems of content (more than nine tiles), as desired. Where there aremore tiles than can be comfortably fit on a single screen, the user maybe able to scroll through the tiles to show different tiles fordifferent items of content, While a tiled user interface is discussedherein with regard to at least some of the example figures, the featuresdescribed herein are not limited to tiled user interfaces and may beused in any user interface configuration.

The information for any or all of the media items (e.g., items ofcontent and/or services) may include, for example, an indication of thestart time (“ST”) and/or the end time (“ET”) of the item of content(and/or another predetermined point in the content), an identificationof the content (such as by title, screen shot, logo, image, animation,text, etc.), an indication of the service, and/or any other information.In the shown example, a screen shot for each item of content isdisplayed as part of the corresponding tile. The screen shots areindicated in FIG. 4, for simplicity's sake, as a circle and a triangle.However, it will be understood that the screen shots may be actualscreen shots of the individual items of content, such as one or moreimages taken from the content. Moreover, the screen shots may be screenshots that depend upon the points in progress of the items of content.For example, for a given item of content, the screen shot indicated inthe user interface may be a screen shot of the video that is beingpresented in the content at the point in progress (or at a time thatdepends upon the point in progress) The screen shot may dynamicallyupdate automatically and/or periodically (e.g., every second, every fiveseconds, every ten seconds, every minute, etc.) while the user interfaceis being displayed, or the screen shot may remain static as of the timethat the user interface is displayed. Where the user interface isrefreshed (e.g., by leaving the user interface and then returning to theuser interface), the screen shots may also be updated in accordance withthe new point in progress. Where a tile represents a service thatpresents a variety' of scheduled items of content, then the screen shotmay change to indicate which item of content is currently beingtransmitted through the service. Where a tile represents a scheduleditem of content (e.g., scheduled to be multicast beginning at aparticular time and/or within a particular timeframe), that tile maydisappear from the user interface if the item of content has ended itsscheduled transmission. In either case, the screen shot for a given tilemay also dynamically change as the point in progress changes.

The user interface may also indicate the point in progress for each ofthe items of content. In the example of FIG. 4, the point in progressfor each item of content is indicated by displayed progress indicator402. that may differentiate between a past portion and a future portionof the item of content. The progress indicator may be dynamicallyupdated over time in the displayed user interface as the point inprogress changes. In this example, the progress indicators are each ashaded or otherwise visually distinguished region of the screen shotand/or of the tile itself. For example, shaded regions 402-A, 402-B, and402-C are shown in FIG. 4. The sizes and/or shapes of the regions 402may depend upon the point in progress for each of the items of content.For instance, in the present example, the three items of contentassociated with tiles 401-A, 401-B, and 401-C, respectfully, are thesame items of content as Title A, Title B, and Service 1 of FIG. 3. Ascan be seen, the portions 402 of the screen shots or tiles that areshaded correspond to the points in progress for the respective items ofcontent Title A, Title B, and the item of content currently beingtransmitted through Service 1. Specifically, in this example,approximately 60% of the screen shot or tile for Title A (information401-A) is shaded or otherwise visually distinguished, approximately 10%of the screen shot or tile for Title B (information 401-B) is shaded orotherwise visually distinguished, and approximately 45% of the screenshot or tile for item of content being transmitted through Service 1(information 401-C) is shaded or otherwise visually distinguished, thuscorresponding to the example points in progress as discussed previouslywith reference to FIG. 3. By shading an image in a tile or otherrepresentation (and/or the tiles or other representations, or portionsthereof to indicate the point in progress, this may save valuable screenreal estate. In contrast, if a progress bar were displayed next to arepresentation, the progress bar may require additional screen space todisplay the progress bar. Or, even if the progress bar were overlaid ona tile, the tile might need to be made bigger to account for what mightbe otherwise hidden by the progress bar. Thus, the tiles may potentiallyhe made smaller by integrating the point in progress indication with thetile image and/or portion thereof, such as by shading, modifying a colorpalette, modifying a tint , modifying a brightness, and/or otherwisevisually modifying a portion of the image (e.g., portion 402A), wherethe size and/or position of the portion depends upon the point inprogress. As will be described below, there are other ways of visuallymodifying a tile, such as by modifying the tile's boundaries and/orother visual properties and/or providing a progress tine, to indicatethe point in progress.

The user may select one of the items of content and/or services in anyof a number of ways. For example, where the user interface is displayedon a touch-sensitive display device, the user may be able to simplytouch the desired tile. In response, further information about the itemof content and/or the service providing the item of content may bepresented and/or the item of content itself may be presented to (e.g.,viewed by) the user. The presentation of the item of content may be onthe same display device as the user interface and/or on a separatedevice. Where the user interface is displayed on a computer having amouse input device, the user may be able to hover over and/or click onthe indicated tile for further information and/or to view the associateditem of content. In still further examples, tiles may be selected usingother user input means, such as hand waving/pointing gestures (e.g.,where the device includes a camera), audio input (where the deviceincludes a microphone and speech recognition functionality), and thelike.

The tiles may also be selected using a remote control, keyboard, orother button-centric input device. To make this easier, the example userinterface of FIG. 4 may include quick-select indicators for at leastsome of the items of content and/or their respective tiles, in thisexample, nine of the tiles are associated with a displayed indication ofa numeral (zero through nine). These quick select indicators mayindicate to the user a button on a user interface device (e.g., bypressing the indicated numeric button of a remote control or keyboard)to select the associated item of content, For example, if the userpresses the “0” button of the remote control or keyboard, thenassociated Title A may be presented to the user (or information aboutTitle A). Likewise, in this example, if the user presses the “I” buttonof the remote control or keyboard, then associated Title B may bepresented to the user (or information about Title B). As the userscrolls through the user interface, the quick-select indicators may beassociated with (and displayed in conjunction with) different ones ofthe items of content and/or services. While numerals are discussedherein as example quick-select indicators, other symbols may be used,For example, letters, colors, and/or graphical symbols may be used asquick-select indicators. In general, it may be desirable for the layoutof the quick-select indicators to match the physical layout of buttonson the user input device (e.g., the remote control or keyboard). Also,two-digit or longer numbers, letter combinations, or the like may beused as quick-select indicators.

In the example shown, some or all of the quick-tune button mappings maybe arranged on the display relative to each other in the same order thatthe buttons are available to the user. For example, where a remotecontrol being used with the interface has buttons with the top row “1 23,” the next row down “4 5 6,” the next row down “7 8 9” and a bottom“0” button, then the mappings may also be presented in the userinterface in the same physical order and layout. An example of such aremote control layout is shown in FIG. 15. Such a layout is also matchedin FIGS. 4-8, in which the top row of tiles is mapped to buttons 1, 2,and 3, the next row of tiles is mapped to buttons 4, 5, and 6, the nextrow of tiles is mapped to buttons 7, 8, and 9, and one of the next rowof tiles is mapped to button 0. In matching the button layout with themapping layout of the interface, this may allow the user to slide his orher or thumb from one button to the next on the remote control withoutneeding to look at the remote control. This may be especially true wherethe user is very familiar with the button layout of the user device,such as a cellular phone or remote control device that is used on aregular basis.

To match the layout of the mapped representations on the user interfacewith the layout of the mapped buttons on the remote control (or otheruser device), one or more computing devices (e.g., the device presentingthe user interface and/or the user device containing the buttons) maydetermine the layout of the buttons. This may be done, for instance, bythe computing device presenting the user interface communicating withthe remote control or other user device that contains the buttons and/orby receiving the layout via user input. Where the user identifies thelayout of the buttons, the user may do so directly (e.g., by graphicallyindicating where the buttons are located) and/or by identifying thedevice that contains the buttons, such as by make and model. Where thedevice is identified such as by make/model, then the computing devicepresenting the user interface may have access to a lookup table thatassociates, e.g., makes/models of devices with respective buttonlayouts. Where the computing device presenting the user interface isalso the same device that contains the buttons, then the computingdevice may already be pre-programmed with the button layout. Whilecertain embodiments are described herein as matching the layout of theuser interface representations with the layout of the mapped buttons,there may be variations such that the matching is not perfect or evensimilar. Thus, more generally, the layout of the representations in theuser interface may be made so as to depend upon the determined layout ofthe mapped buttons of the user device.

In FIG. 4, the regions 402 are shaded to indicate the points inprogress. However, other visually distinguishing features may be used toindicate the points in progress. For example, the regions 402 may bedisplayed with altered colors, altered brightness, and/or alteredcontrast, as semi-transparent overlays, as black-and-white regions(where the screen shot is in color), as color regions (where the screenshot is black-and-white, and the like. In any of these examples, thepoint in progress for each item of content may be indicated by visuallydistinguishing a portion of the screen shot (or of moving video,animation, a logo, graphics, text, etc,), where the size of the visuallydistinguished portion depends at least partially upon the point inprogress for the item of content.

Moreover, the point in progress may be indicated in other ways besidesvisually distinguishing a portion of a screen shot or other image/video.For example, referring to FIG. 5, the point in progress may be visuallyindicated by a progress indicator, such as a progress bar 501, where thelength and/or other dimension of the progress indicator (e.g., bar)depends at least partially upon the point in progress for the item ofcontent. While the progress bar 501 is shown at the bottom of a tile,the progress bar 501 or other indicator may be presented at any locationrelative to the tile (inside or outside the tile), such as at the top,in the middle, or on the left or right sides. Moreover, the progress baror other indicator may be vertical rather than in the horizontalconfiguration shown in FIG. 5.

Another example of how to indicate points in progress of items ofcontent is shown in FIG. 6. In this example, the points in progress areeach visually indicated by a progress indicator such as a vertical line(e.g., progress line 601) extending through the tile, screen shot,video, and/or other information for the item of content, where thehorizontal position of the line depends at least partially upon thepoint in progress for the item of content. For example, where the pointin progress of an item of content is close to 0%, the progress line 601or other progress indicator may be near the left side of the tile forthe item of content, As the point in progress advances toward 100%, theprogress line 601 or other progress indicator may correspondinglyadvance toward the right side of the tile. In other configurations, theprogress line 601 may be a horizontal line, where the vertical positionof the line or other progress indicator relative to the tile depends atleast partially upon the point in progress for the item of content(where, e.g., the horizontal line advances from top to bottom as thepoint in progress advances). In either case, because the progress line601 may be relatively thin, it may be expected not to block theunderlying image in any significant way. Moreover, because the progressline 601 may be overlaid on the image of a tile (or otherrepresentations), the progress line 601 may not take up any additionalscreen space.

Yet another example of how to indicate points in progress of contentitems is shown in FIG. 7. In this example, the points in progress areeach visually indicated by altering one or more boundaries (e.g., upperboundary 701) of the tile, screen shot, video, image, logo, or otherindication of the item of content. For example, the upper boundary 701is taller on a left portion and lower on a right portion, where theupper boundary 701 becomes lower at a left-right location that dependsat least partially upon the point in progress for the item of content.As the point in progress advances in time, the location at which theupper boundary 701 becomes lower may correspondingly advance toward theright side of the boundary 701. This may be applied to any one or moreof the boundaries of a representation, including but not limited to theupper boundary 701, a lower boundary, and/or one or more sideboundaries. Moreover, depending upon which of the boundaries aremodified and/or how they are modified to indicate the point in progress,the overall size of the representation may also change with the point inprogress.

Another example of how to points in progress of content items may beindicated in a user interface is shown in FIG. 8. In this example, thepoints in progress are each visually indicated by a progress indicatorsuch as a pie chart indicator 801. In this example, the pie chartindicator 801 has two portions that are visually distinguishable fromeach other (e.g., with one portion darker than the other and/or adifferent color and/or pattern than the other). One portion (in thisexample, the darker portion) may indicate the progress so far (the pointin progress), and the other portion (in this example, the lighterportion) may indicate the content remaining from the point of progressto the end of the content, The relative areas between the two portionsof the pie chart indicator 801 may indicate the relative ratio of theprogress made so far (the point in progress) versus the amount ofcontent remaining from the point in progress. There are many variationsthat may be used. For example, rather than a circular pie chart, theprogress indicator may be an arc (filled or unfilled) that increases inarc angle in conjunction with the point in progress. Or, the progressindicator may be of a different shape (e.g., square, rectangular, oval,or any geometric or nongeometric shape) in which the area within theshape is filled and/or patterned in such a way as to indicate the amountof progress made through the content. Thus, one example variation ofsuch a filled shape may include the progress bar 501. While the piechart indicator 801 is shown at a particular location relative to thetile with which it is associated, the pie chart indicator 801 (or anyother progress indicator) may be located at any position within,outside, overlapping, and/or around the tile or other displayedinformation associated with the item of content.

Another example of how to points in progress of content items may beindicated in a user interface is shown in FIG. 9. In this example, theuser interface includes a list of items (e.g., Title A through Title H)of content and/or services (e.g., Service 1 and Service 2) that presentitems of content, with each item of content and/or services having anassociated displayed progress indicator. In this example, the progressindicators are progress bars (e.g., progress bar 901). However, theprogress indicators in the user interface of FIG. 9 (and in the userinterfaces of any of the other figures herein) may be any other types ofprogress indicators, such as but not limited to pie chart indicators,lines, altered borders, etc.

Also, in any of the example user interfaces discussed herein, theprogress indicator may additionally or alternatively be presented toindicate one of a smaller subset of possible points in progress. Forexample, rather than having, say, 100 possible states of the progressindicator (e.g., corresponding to 0 through 99 percent of progressthrough the content), or even more, there may be only, e.g., two, three,or four states that the progress indicator may attain. For example, afirst state may indicate that he point in progress is within a firstrange of progress (e.g., between 0% and 24% progress through thecontent), a second state may indicate that the point in progress iswithin a different second range of progress (e.g., between 25% and 49%progress through the content), a third state may indicate that the pointin progress is within a different third range of progress (e.g., between50% and 74% progress through the content), and a fourth state mayindicate that the point in progress is within a different fourth rangeof progress (e.g., between 75% and 100% progress through the content).Thus, for instance, the progress indicator within a given range mayappear the same until the point in progress advances to the next range,at which time the progress indicator may change to indicate the nextrange of point in progress.

Further examples of how the point in progress n ay be indicated (which nay include those already discussed) include presenting some or all ofthe progress indicator in a particular color, size, pattern, shape,position, orientation, thickness, width, height, animation speed, and/orthree-dimensional depth that depends partially or fully on the point inprogress.

FIG. 10 is a flow chart showing example methods that may be performed.The methods may be performed, in whole or in part, by one or morecomputing devices, such as by any one or more of the elements of FIGS. 1and 2. While particular devices may be identified. with various steps inthe flow chart, these are merely examples; any one or more devices mayperform any of the steps. Some of the steps may be omitted or performedin a different order without departing from the scope of the disclosure.

At step 1001, a user device, such as any of the elements of premises 102or any other devices such as devices communicating via a cellular phonenetwork, may receive schedule information from the network (e.g., fromcontent server 106 via link 101, the cellular network, etc.). Theschedule information may include, for example, information identifyingwhich items of content are scheduled to be presented, at what times, onwhat channels or other services, the content titles, and/or otherinformation. At step 1002, the user device may collect the user'scontent consumption history, which may include information indicating,for instance, which items of content have already been viewed (or atleast partially viewed), which items of content have been tagged asfavorites, which. items of content have been set for recording, etc. Thecontent consumption history may be provided to the user device from thenetwork (e.g., from content server 106 via link 101, the cellularnetwork, etc and/or the content consumption history may be stored inlocal data storage (e.g., memory) of the user device. The scheduleinformation and the content consumption history may be used together bythe user device to generate the user interface.

At step 1003, the user device and/or a network element such as one ofthe servers 105-107, for instance, may determine whether it is desiredby the user (or by software of the user device) to display the userinterface e.g., a content guide). For example, the user may select a“show guide” button or other selection displayed by the device via auser interface. if not, then the process may return, e.g., to step 1001for further updates to the schedule information. In other examples, theprocess may not retrieve the schedule information until it is desired(e.g., until the user has requested) to display the user interface.

At step 1004, the user device and/or a network element such as one ofthe servers 105-107, for instance, may sort the displayed order of thevarious services and/or items of content on which the items of contentare to be provided. For example, the sorting may involve sorting and/orfiltering the items of content and/or services such that only a subsetof the items of content and/or services in the schedule information areto be displayed to the user as tiles, and/or that the order of the tilesto be displayed are arranged in accordance with the sorting. The sortingmay include sorting, for instance, by time (e.g., tiles for those itemsof content that are scheduled to be presented soon or that are alreadyin progress may be displayed first), by name or title (e.g.,alphabetically), by genre, by rating, by type (e.g., movie, televisionprogram, series, live, on-demand, etc.), by user-defined favorites, byservice, and/or the like.

At step 1005, the user device and/or a network element such as one ofthe servers 105-107, for instance, may identify the point in progressfor each of the items of content in the user interface. The point inprogress in this example may be, as described previously, the locationwithin an item of content that is currently being presented through thenetwork to one or more user devices. This may involve, for instance,comparing the current time with the scheduled presentation timeframe ofan item of content. If the current time is past the scheduled starttime, then the point in progress may be, or otherwise be based on, thedifference between the current time and the scheduled start time. Inother examples, for instance where the scheduled start time may beunreliable or may not be scheduled (such as where the item of content isan on-demand item of content), determining the point in progress mayinvolve querying from the network the current point at which the item ofcontent is being presented.

In some examples, the point in progress for a given item of content maybe the current playback location in the item of content, such as shownin FIG. 11 (where “NOW” indicates the current playback location). Infurther examples, the point in progress may be based on the currentplayback location within an item of content that is currently beingpresented through the network to one or more user devices, even if thepoint in progress is not actually the location. For example, the pointin progress may dam^(.) from the location within the item of content bya fixed amount, such as X (e.g., ten) seconds of playback before thecurrent location or X (e.g., ten) seconds of playback after the currentlocation within the item of content). Or, where the item of contentcontains advertising, the point in progress may be the beginning of oneof the previous (or future) advertising slots within the item ofcontent. Examples of this are shown in FIGS. 12-14. In FIG. 12, an itemof content may contain two advertising slots (Ad 1 and Ad 2), and thecurrent playback location (“NOW”) is shown relative to the point inprogress, which is at the beginning of Ad 1. in FIG. 13, the currentplayback location has moved forward, and the point in progress in thisexample is still at the beginning of Ad 1. In FIG. 14, the currentplayback location has moved past Ad 2, and now the point in progress isat the beginning of the Ad 2 slot. The point in progress as indicated inthe user interface may be in accordance with any of these examplesand/or in accordance with other configurations.

At step 1006, the user device and/or a network element such as one ofthe servers 105-107, for instance, may determining a mapping of remotecontrol buttons (which may be considered quick-tune buttons)and/or otheruser interface elements with one or more of the tiles that are displayedin the user interface. For example, as discussed above, the numericdigits (0-9) may be mapped to ten of the tiles, and other keys on theremote control (e.g., a “Back” or “Next” key) may be mapped to othertiles. Each tile may be displayed with a visual overlay of its mappedkey, and the user can select a tile by pressing its mapped key. Doing somay result in the display of additional information about the selectedtile's corresponding item or content and/or service (e.g., informationdescribing the service and/or the item of content currently beingtransmitted on that service). The user may press the same mapped keyagain to select the service, and to begin receiving and consuming theservice's content (e.g., tuning to NBC). Examples of such mapping areindicated in the user interfaces of FIGS. 4-9, For example, referring tothe user interface of FIG. 4, if the user presses the “0” remote controlbutton, then the content associated with content tile 401-A may beselected, if the user presses the “1” remote control button, then thecontent associated with content tile 401-B may be selected, and if theuser presses the “2” remote control button, then the content associatedwith content tile 401-C may be selected, etc.

At step 1007, the user device and/or a network element such as one ofthe servers 105-107, for instance, may cause the user interface to bedisplayed at a display of the user device, such as in the form of agraphical and/or textual user interface. The user interface may have anyappearance, such as but not limited to the form of any of the userinterfaces of FIGS. 4-9. The display of the user device may bephysically integrated with the user device (e.g., where the user deviceis a tablet computer, smart a phone, laptop computer, or the like), orthe display may be physically separate from the user device (e.g., wherethe user device is a set-top box and the display is a television set, orwhere the user device is a desktop computer and the display is aseparate computer display, or where the user device otherwise wirelesslyor via wire transmits information to be displayed to a separate displaydevice). The user interface may be generated locally by the user deviceor remotely by a network element such as one of the servers 105-107.

At step 1008, the user device and/or a network element such as one ofthe servers 105-107, for instance, may determine whether the userinterface as displayed should be updated, such as by changing what isdisplayed. This may occur for any of a variety of reasons. For example,the points in progress in the various items of content for which tilesare displayed may change over time, or a user input such as selection ofa tile or scrolling through the tiles may invoke a change in thedisplayed user interface. Or, the user may make a selection that changesthe way the user interface is displayed, such as by changing from one ofthe layouts in one of the FIGS. 4-9 to another of the layouts in anotherof the FIGS. 4-9. If the user interface as displayed is to be changed,then the process may move to step 1009, in which the user interface isupdated and the process returns to step 1004. Otherwise, the process maymove to step 1010.

At step 1010, the user device and/or a network element such as one ofthe servers 105-107, for instance, may determine whether one of themapped keys has been selected by the user, and/or whether the user hasotherwise selected one of the items of content(e.g., by touching orclicking on the tile or other representation for the item of content).As discussed above, some or all of the tiles displayed in the userinterface may be associated with (mapped to) a different user-selectablekey, such as a key on the user's remote control device, keyboard, orother user input device. For instance, referring to FIGS. 4-9, the tiles(e.g., tiles 401) and/or other representations are displayed withassociated numbers, which indicate the mapping of items of content withkeys. Again, while number keys are mapped in this example, other typesof keys, such as alphabetic or symbolic keys, may be additionally oralternatively mapped to items of content. The user may alternativelyselect one of items or content and/or services at step 1010 by, forinstance, touching the tile or progress bar for the item of contentand/or service (where the user interface is displayed on atouch-sensitive display device), using a mouse or other pointing deviceto select the tile or progress bar, or the like.

If an item of content or service is not determined at step 1010 as beingselected by the user, then the process may return to step 1001 or toanother earlier step. If an item of content or service is determined atstep 1010 as being selected, then the process may move to step 1011, inwhich the selected item of content or service is determined.

In response to detecting that an item of content or service has beenselected, the process may, at step 1012, display information about themapped item of content or service, such as but not limited to the fullcontent title, actors, directors, and other contributors to the item ofcontent, service information, length, future showings of the item ofcontent, a description of the plot, and/or other information associatedwith the item of content. if the same mapped key is selected again or ifthe same item of content or service is otherwise selected again at step1013, then the process may move to step 1014. If a different item ofcontent or service is selected at step 1013, or if after a predeterminedtimeout period no item of content is further selected, then the processmay move to step 1015. Thus, in some embodiments, pressing a mapped keyonce (e.g., on a remote control) may cause information about theselected item of content to be displayed (e.g., at step 1012), andpressing the same mapped key again may cause the item of content itselfto be presented (e.g., both video and audio of the content, dependingupon the content). This may be convenient in that the user may not needto move his or her finger from the mapped button in order to both seeinformation about the content and consume the content. In otherembodiments, an item of content or service need be selected only once(e.g., a mapped key need be pressed only once) to cause the process tomove to step 1014, such that the process may move from step 1010directly to step 1014.

At step 1014, the user device and/or a network element such as one ofthe servers 105-107, for instance, may cause the user device (or anotherdevice) to begin accessing (e.g., obtaining, receiving, displaying,recording, downloading, linking to, and/or tuning to) the selected itemof content. Thus, the user may begin watching the desired item ofcontent and/or service via the user device and/or via a other devicesuch as a personal computer, television set, set-top box, smart phone,tablet computer, and/or the like. The content may be displayed beginningat the current point in progress or at a location within the item ofcontent that depends upon the point in progress. For example, if thepoint in progress is the current playback location of the item ofcontent, then the content may be displayed beginning at the point inprogress or at a location within the item of content that is determinedbased on the point in progress (such as at the nearest earlieradvertising slot, or a certain number of seconds prior to the point inprogress, etc.). Where the item of content is a multicast item ofcontent (multicast to a plurality of devices) rather than an on-demanditem of content, the point in progress may be the current playbacklocation being transmitted in the multicast, and the item of content maybe expected to be displayed beginning at that current playback locationfor at a location that is based on that current playback location). Theprocess may then return to step 1001 or to another step as desired. Forinstance, the user interface may no longer be displayed while the itemof content is being displayed. In this case, the user interface may notbe determined and/or displayed (such as beginning at step 1004) untilthe item of content has ceased being displayed. Alternatively, the userinterface may be displayed simultaneously with the item of content beingdisplayed. In this case, the process may immediately return to anearlier step as appropriate for continuing to display the user interfacewith any updated information as appropriate.

If, at step 1014, a different item of content or service has beenselected, then the process may return to step 1011. If no furtherselection is made from step 1014, then the process may move to step 1015and then to step 1016 to determine whether the user interface should beexited. In another item of content or service is determined at step 1015to have been selected, then the process may move to step 1011.

Although example embodiments are described above, the various featuresand steps may be combined, divided, omitted, rearranged, revised and/oraugmented in any desired manner, depending on the specific outcomeand/or application. Various alterations, modifications, and improvementswill readily occur to those skilled in art. Such alterations,modifications, and improvements as are made obvious by this disclosureare intended to be part of this description though not expressly statedherein, and are intended to be within the spirit and scope of thedisclosure. Accordingly, the foregoing description is by way of exampleonly, and not limiting.

1. A method, comprising: generating, by one or more computing devices, auser interface comprising a plurality of representations eachcorresponding to one of a plurality of items of content and eachcomprising a screen shot of the respective item of content related to apoint in progress of the respective item of content; and in response toa user selection of one of the representations, causing one of the itemsof content to be accessed.
 2. The method of claim 1, wherein, for eachof the representations, the screen shot is visually modified inaccordance with the point in progress of the respective item of content.3. The method of claim 1, wherein, for each of the representations, thescreen shot is visually modified to comprise a shaded region having asize that depends upon the point in progress of the respective item ofcontent.
 4. The method of claim 1, wherein, for each of therepresentations, the screen shot is visually modified to comprise afirst portion of the screen shot displayed using a first color paletteand a second portion of the screen shot using a different second colorpalette, wherein a size of the first portion of the screen shot dependsupon the point in progress of the respective item of content.
 5. Themethod of claim 1, further comprising dynamically updating at least oneof the representations while the user interface is displayed as thepoint in progress for the at least one of the representations moves. 6.The method of claim 1, further comprising: determining that at least oneof the items of content was previously consumed; and visuallydifferentiating the representation for the at least one of the items ofcontent that was previously consumed from one or more others of therepresentations in the user interface.
 7. The method of claim 6, whereinsaid visually differentiating comprises using a black-and-white palettefor the representation for the at least one of the items of content thatwas previously consumed, and using at least one color palette for theone or more others of the representations in the user interface.
 8. Themethod of claim 1, further comprising: mapping at least some of theplurality of representations to different buttons on a user remotecontrol; receiving an indication that a user pressed one of the buttons;and identifying a corresponding one of the representations mapped to theone of the buttons as a selected one of the plurality ofrepresentations.
 9. The method of claim 1, wherein the one of the itemsof content is a scheduled item of content.
 10. The method of claim 1wherein the one of the items of content is currently being transmitted,and wherein the causing the one of the items of content to be accessedcomprises tuning to the one of the items of content currently beingtransmitted.
 11. The method of claim 1, wherein the one of the items ofcontent is currently being transmitted, the method further comprisingdetermining the point of progress for the one of the items of content asa location within the one of the items of content at which the one ofthe items of content is currently being transmitted.
 12. The method ofclaim 1, further comprising determining, for the one of the items ofcontent, the point of progress for the one of the items of content as alocation within the one of the items of content at which the one of theitems of content is currently scheduled to be presented.
 13. A method,comprising: generating, by one or more computing devices, a userinterface comprising a plurality of representations each correspondingto one of a plurality of items of content, each of the representationscomprising a screen shot of the respective item of content; determiningthat a first one of the items of content has been previously accessed;and causing the user interface to show the screen shot for the first oneof the items of content to be visually differentiated from at least oneother of the screen shots.
 14. The method of claim 13, wherein thecausing comprises causing the screen shot for the first one of the itemsto be displayed in black and white, wherein the screen shots of the atleast one other of the screen shots is displayed in color.
 15. Themethod of claim 13, further comprising, in response to a user selectionof one of the representations, causing one of the items of content to beaccessed.
 16. The method of claim 13, further comprising: mapping atleast some of the plurality of representations to different buttons on auser device; receiving an indication that a user pressed one of thebuttons; and identifying a corresponding one of the representationsmapped to the one of the buttons as a selected one of the plurality ofrepresentations.
 17. A method, comprising: generating, by one or morecomputing devices, a user interface comprising a plurality ofrepresentations each corresponding to one of a plurality of media items;determining a layout of buttons on a user device; and mapping therepresentations to the buttons such that a layout of the representationsas presented in the user interface depends upon the layout of thebuttons.
 18. The method of claim 17, wherein at least one of theplurality of media items comprises an item of content.
 19. The method ofclaim 17, further comprising causing the user interface to includeindications of the mapping.
 20. The method of claim 17, furthercomprising: in response to a user selection of one of the buttons,causing information about one of the media items mapped to the one ofthe buttons to be displayed; and in response to a subsequent userselection of the one of the buttons while the information is displayed,causing the one of the media items to be accessed.